package com.hhd.flow.engine.cmd;

import com.hhd.flow.engine.cmd.impl.*;
import com.hhd.flow.engine.cmd.impl.virtual.VirtualCompleteUserTaskCommand;
import com.hhd.flow.engine.cmd.impl.virtual.VirtualStartCommand;

public interface FlowCommandBuilder {
    StartProcessCommand.StartProcessCommandBuilder newStartProcessCommandBuilder();
    CompleteUserTaskCommand.CompleteUserTaskCommandBuilder newCompleteUserTaskCommandBuilder();
    AddNotifyCommand.AddNotifyCommandBuilder newAddNotifyCommandBuilder();
    CompleteNotifyCommand.CompleteNotifyCommandBuilder newCompleteNotifyCommandBuilder();
    ToFormCommand.ToFormCommandBuilder newToFormCommandBuilder();
    EndCommand.EndCommandBuilder newEndCommandBuilder();
    CountUserSignCommand.CountUserSignCommandBuilder newCountUserSignCommandBuilder();
    QuerySubtractAbleUserSignCommand.QuerySubtractAbleUserSignCommandBuilder newQuerySubtractAbleUserSignCommandBuilder();
    SubtractUserSignCommand.SubtractUserSignCommandBuilder newSubtractUserSignCommandBuilder();
    VirtualStartCommand.VirtualStartCommandBuilder newVirtualStartCommandBuilder();
    VirtualCompleteUserTaskCommand.VirtualCompleteUserTaskCommandBuilder newVirtualCompleteUserTaskCommandBuilder();
    QueryNotifyFlowUserCommand.QueryNotifyFlowUserCommandBuilder newQueryNotifyFlowUserCommandBuilder();
    WithdrawCommand.WithdrawCommandBuilder newWithdrawCommandBuilder();
    ToFormByAdminCommand.ToFormByAdminCommandBuilder newToFormByAdminCommandBuilder();
    RetrieveUserTaskCommand.RetrieveUserTaskCommandBuilder newRetrieveUserTaskCommandBuilder();
}
